#ifndef OPTIONS_H_
#define OPTIONS_H_

#include <glibmm.h>

namespace gpyp {

class MainOptionGroup : public Glib::OptionGroup {
  friend class OptionContext;
private:
  gboolean      use_config_;
  gchar        *config_dir_;
  Glib::ustring config_dir_s_;
  gint          max_logs_;

  GOptionEntry  entries_[4];

protected:
  virtual bool on_post_parse(Glib::OptionContext &context, Glib::OptionGroup &group);

public:
  MainOptionGroup();
  virtual ~MainOptionGroup();
};

class OptionContext : public Glib::OptionContext {
private:
  MainOptionGroup main_;

public:
  bool                 get_use_config() const;
  const Glib::ustring &get_config_dir() const;
  int                  get_max_logs() const;

  OptionContext();
};

}/*gpyp*/

#endif/*OPTIONS_H_*/
